﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using AdmLaboratorios.Business;
using AdmLaboratorios.DTO;


namespace AdmLaboratorios
{
    public partial class frmCCConsulta : Form
    {
        public frmCCConsulta()
        {
            InitializeComponent();
        }

        private void frmCCConsulta_Load(object sender, EventArgs e)
        {
            cbResultado.Items.Clear();
            cbResultado.Items.Add(eStockEstado.TODO);
            cbResultado.Items.Add(eStockEstado.APROBADO);
            cbResultado.Items.Add(eStockEstado.RECHAZADO);
            cbResultado.SelectedIndex = 0;

            dtFechaDesde.Value = DateTime.Today.AddMonths(-1);
            dtFechaHasta.Value = DateTime.Today.AddMonths(1);
        }

        private void cbResultado_SelectedIndexChanged(object sender, EventArgs e)
        {
            ReloadGrid();
        }

        private void dtFechaDesde_ValueChanged(object sender, EventArgs e)
        {
            ReloadGrid();
        }

        private void dtFechaHasta_ValueChanged(object sender, EventArgs e)
        {
            ReloadGrid();
        }

        private void btnCerrar_Click(object sender, EventArgs e)
        {
            this.Close();
        }

        internal void ReloadGrid()
        {
            gv.DataSource = null;
            gv.DataSource = InformesLaboratorio.Consulta(cbResultado.Text.Trim().ToUpper(), dtFechaDesde.Value, dtFechaHasta.Value);
            lblRegistros.Text = ((DataTable)gv.DataSource).Rows.Count.ToString();
        }

        private void gv_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
        {
            if (gv.SelectedRows.Count == 1)
            {
                var f = FormsFactory.ShowForm<frmCCAlta>();
                f.SetValues((int)gv.SelectedRows[0].Cells["Id"].Value);
            }
        }

        private void btnAgregar_Click(object sender, EventArgs e)
        {
            FormsFactory.ShowForm<frmCCAlta>();
        }

        private void btConsultar_Click(object sender, EventArgs e)
        {
            if (gv.SelectedRows.Count == 1)
            {
                var f = FormsFactory.ShowForm<frmCCAlta>();
                f.SetValues((int)gv.SelectedRows[0].Cells["Id"].Value);
            }
        }



    }
}
